package com.lightsaber.trade.core.entity.account;

import java.math.BigDecimal;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

import com.lightsaber.trade.core.entity.AuditedObject;

/**
 * Menu.
 */
@Entity
@Table(name = "ACCT_MENU")
public class Menu extends AuditedObject {

    private static final long serialVersionUID = -4611358964952343044L;

    @Id
    @Column(name = "MENU_ID", unique = true, nullable = false, precision = 22, scale = 0)
    private BigDecimal menuId;

    @Column(name = "APP_CODE", nullable = false, length = 30)
    private String appCode;

    @Column(name = "FUNC_CODE", nullable = false, length = 30)
    private String funcCode;

    @Column(name = "MENU_TYPE", nullable = false, length = 30)
    private String menuType;

    @Column(name = "MENU_NAME", nullable = false, length = 240)
    private String menuName;

    @Column(name = "MENU_CN_ZH_NAME", nullable = false, length = 240)
    private String menuCnZhName;

    @Column(name = "level_1_Pos", nullable = false, precision = 2, scale = 0)
    private Byte level1Pos;

    @Column(name = "LEVEL_2_POS", precision = 2, scale = 0)
    private Byte level2Pos;

    @Column(name = "LEVEL_3_POS", precision = 2, scale = 0)
    private Byte level3Pos;

    @Column(name = "LEVEL_4_POS", precision = 2, scale = 0)
    private Byte level4Pos;

    @Column(name = "FUNC_ACTION", length = 100)
    private String funcAction;

    public BigDecimal getMenuId() {
        return this.menuId;
    }

    public String getAppCode() {
        return this.appCode;
    }

    public void setAppCode(final String appCode) {
        this.appCode = appCode;
    }

    public String getFuncCode() {
        return this.funcCode;
    }

    public void setFuncCode(final String funcCode) {
        this.funcCode = funcCode;
    }

    public void setMenuId(final BigDecimal menuId) {
        this.menuId = menuId;
    }

    public String getMenuType() {
        return this.menuType;
    }

    public void setMenuType(final String menuType) {
        this.menuType = menuType;
    }

    public String getMenuName() {
        return this.menuName;
    }

    public void setMenuName(final String menuName) {
        this.menuName = menuName;
    }

    public String getMenuCnZhName() {
        return menuCnZhName;
    }

    public void setMenuCnZhName(String menuCnZhName) {
        this.menuCnZhName = menuCnZhName;
    }

    public Byte getLevel1Pos() {
        return this.level1Pos;
    }

    public void setLevel1Pos(final byte level1Pos) {
        this.level1Pos = level1Pos;
    }

    public Byte getLevel2Pos() {
        return this.level2Pos;
    }

    public void setLevel2Pos(final Byte level2Pos) {
        this.level2Pos = level2Pos;
    }

    public Byte getLevel3Pos() {
        return this.level3Pos;
    }

    public void setLevel3Pos(final Byte level3Pos) {
        this.level3Pos = level3Pos;
    }

    public Byte getLevel4Pos() {
        return this.level4Pos;
    }

    public void setLevel4Pos(final Byte level4Pos) {
        this.level4Pos = level4Pos;
    }

    public String getFuncAction() {
        return this.funcAction;
    }

    public void setFuncAction(final String funcAction) {
        this.funcAction = funcAction;
    }

}
